import pymysql

#定义学生信息表操作类，实现数据的增、删、查询操作

class Stu:
	'''stu表信息操作类'''
	def __init__(self):
		'''实现数据库连接'''
		self.db = pymysql.connect(host="localhost",user="root",password='',db="mystu",charset="utf8")  #打开数据库连接
		self.cursor = self.db.cursor()   #使用cursor()方法创建一个游标对象
	
	def findAll(self):
		'''学生信息查询'''
		sql = "select * from stu"   #定义查询信息sql语句
		try:
			self.cursor.execute(sql)  #执行查询操作
			self.alist = self.cursor.fetchall()   #取出全部信息
			return self.alist  #返回学生信息
			#for date in self.alist:
				#print(date)
		except Exception as err:
			print("SQL执行错误，原因：",err)
	
	def dele(self ,id):
		'''删除学生信息'''
		sql = "delete from stu where sid=%d"%(id)   #定义删除信息sql语句
		try:
			self.cursor.execute(sql)   #执行删除操作
			self.db.commit()   #事务提交
		except Exception as err:
			self.db.rollback()   #事务回滚
			print("SQL执行错误，原因：",err)
	
	def insert(self,data):
		'''添加学生信息'''
		sql = "insert into stu(sid,name,age,classid) values(%d,'%s',%d,'%s')"%(data)   #定义添加信息sql语句
		try:
			self.cursor.execute(sql)   #执行添加操作
			self.db.commit()   #事务提交
		except Exception as err:
			self.db.rollback()    #事务回滚
			print("SQL执行错误，原因：",err)

	
	def __del__(self):
		'''关闭数据库连接'''
		self.db.close()   #关闭数据库连接